broadway: Don't send node updates to browser if nothing changed
authorAlexander Larsson <alexl@redhat.com>
Thu, 30 Nov 2017 16:32:01 +0000 (17:32 +0100)
committerAlexander Larsson <alexl@redhat.com>
Thu, 30 Nov 2017 20:57:42 +0000 (21:57 +0100)
gdk/broadway/broadway-output.c

index 226526219a37887496607c3ece3fa9fff776bf57..81332fa795055d689dbf37d67730e9f2faf0825f 100644 (file)
@@ -373,6 +373,12 @@ broadway_output_window_set_nodes (BroadwayOutput *output,
                                   BroadwayNode   *old_root)
 {
   gsize size_pos, start, end;
+
+  /* Early return if nothing changed */
+  if (old_root != NULL &&
+      broadway_node_deep_equal (root, old_root))
+    return;
+
   write_header (output, BROADWAY_OP_SET_NODES);
 
   append_uint16 (output, id);